I. Field of the Invention
The invention relates to communication systems. More particularly, the invention relates to communication of digital data over a shared link.
II. Description of the Related Art
FIG. 1 is an exemplifying embodiment of a terrestrial wireless communication system 10. FIG. 1 shows three remote units 12A, 12B and 12C and two base stations 14. In reality, typical wireless communication systems may have many more remote units and base stations. In FIG. 1, the remote unit 12A is shown as a mobile telephone unit installed in a car. FIG. 1 also shows the portable computer remote unit 12B and the fixed location remote unit 12C such as might be found in a wireless local loop or meter reading system. In the most general embodiment, the remote units may be any type of communication unit. For example, the remote units can be hand-held personal communication system (PCS) units, portable data units such as a personal data assistant, or fixed location data units such as meter reading equipment. FIG. 1 shows a forward link signal 18 from the base stations 14 to the remote units 12 and a reverse link signal 20 from the remote units 12 to the base stations 14.
In the discussion that follows, to aid in illustration, the invention is described with reference to a commonly known, wireless link industry standard and the accompanying data standards which have been developed for use in conjunction with that standard. In fact, the generic principles of the invention can be directly applied to many environments. The discussion that follows assumes operation in accordance with the system described in TIA/EIA/IS-95-A published by the Telephone Industry Association entitled xe2x80x9cMobile Station-Base Station Compatibility Standard for Dual-Mode Wideband Spread Spectrum Cellular Systemxe2x80x9d commonly referred to as IS-95.
In addition, a family of data transmission standards compatible with IS-95 have been adopted to provide data services over a wireless link. Examples of data services are FAX, digital file transfer, network access, standard modem functions and the like. An early standard is described in TIA/EIA/IS-99 entitled xe2x80x9cData Services Option Standard for Wideband Spread Spectrum Digital Cellular System.xe2x80x9d Another more recent standard is described in TIA/EIA/IS-707 entitled xe2x80x9cData Service Options for Spread Spectrum Systems.xe2x80x9d The IS-99 and IS-707 define radio link protocols which allow the remote unit to emulate standard modem functions. In addition to these two standards, TIA/EIA/IS-657 entitled xe2x80x9cPacket Data Services Option for Wideband Spread Spectrum Systemsxe2x80x9d defines a radio link protocol which allows the remote unit to pass packetized data over the wireless link.
FIG. 2 is a block diagram of a standard remote unit 36 which comprises voice and data functionality. A central control unit 26 controls all of the functions needed for wireless voice and data services in addition to personal interface management (PIM), such as voice recording and play back. For example, the central control unit 26 may receive a telephone number entered by a user via a keypad 34 and command a communication unit 24 to establish a voice call to that telephone number.
The communication unit 24 provides the actual wireless voice and wireless data access capability in addition to other inherent functions such as voice playback, translation of wireless voice data to digital format for storage by the central control unit 26 and indications of wireless access status. In one embodiment, the communication unit 24 communicates with a base station according to IS-95. The communication unit 24 exchanges audio signals with a earpiece/microphone unit 28.
A display 30 is used to provide visual information to the remote unit user. The central control unit 26 passes information received from both the keypad 34 and the communication unit 24 to the display 30. For example, the central control unit 26 receives information about the current signal level received from the base station and passes the information to the display 30 where it is displayed for the userxe2x80x94whether or not a wireless channel has been established. In addition, the central control unit 26 passes information concerning the current wireless status to the display 30 during a call. For example, the display 30 may indicate that the channel is connected, disconnected or in the process of being connected. When an incoming call is detected by the communication unit 24, the central control unit 26 enables a ringer 36 to alert the user.
In one embodiment, the central process 26 passes digital data between the communication unit 24 and an external source (not shown) directly. The transfer of data to and from the external source is accomplished by way of a external serial connector 32. For example, a lap top or personal computer running a data service or a diagnostic monitor may be attached to the remote unit 36 via the external serial connector 32. In another embodiment, the central control unit 26 passes serial data directly to and from a lap top or personal computer without involvement from the communication unit 24.
In addition to cellular phones, other forms of portable electronics have become prevalent in the business and personal sectors. One device which is becoming increasingly popular is the personal data assistant (PDA). A PDA is like a miniature palm-held computer which allows the user to perform basic computer functions such as word processing, scheduling, spreadsheets and other such functions.
In order to increase the utility of a PDA, wireless functionality has been introduced to the PDA. When PDA and wireless functions are combined into a single unit having a common palm-sized casing, the resulting unit is referred to as a smartphone. A smartphone may send and retrieve e-mail, access the Internet, act as a pager and cellular telephone and provide many other wireless functions.
When the functionality of a remote unit is combined with the functionality of a PDA, typically a single display is used to provide information concerning the wireless link and concerning the operations of the PDA. For example, the same screen which is used to display the dialed digits and the received signal strength is also used to display e-mail messages and soft key functions. Therefore, the central processor in the remote unit must communicate with a central processor of the PDA to provide such information for display. In addition to wireless status, other functionality in the smartphone may require the transfer of information between the two portions of the smartphone. For example, the smartphone may incorporate an answering machine or voice-memo function. The digital voice samples may be stored in memory associated with the PDA portion of the smartphone. The samples are passed to the remote unit portion of the smartphone when accessed by the user so that the vocoder and speaker portion of the remote unit may be used to replay the message. In a like manner, when an incoming message is recorded, digital voice samples must be passed from the remote unit portion of the smartphone to the PDA portion.
When building a remote unit module for integration into a smartphone, it is advantageous to avoid extensive modification of the existing remote unit design. In this way, development costs as well as on-going production costs may be reduced due to economies of scale.
When an electronic device is designed such that a first plurality of modules communicate with a second plurality of modules over a common data link, some means of controlling the flow of data and regulating access to the common data link must be used. In some environments, it is advantageous if the modules themselves operate transparent to the use of the common data link. For example, the modules may be designed as part of an application specific integrated circuit (ASIC) which is configured to be directly connected to a set of modules rather than connected over a common data link. In order to avoid re-designing the ASIC to operate over a common data link, it is advantageous if the modules themselves operate in the same manner as if a direct connection existed.
However, a problem is encountered when an attempt is made to use the available digital connector on a remote unit to transfer more than one type of information. For example, referring again to FIG. 2, when IS-99 FAX data is being received and passed over the external serial connector 32, the protocol used to transfer the data assumes a dedicated link over the external serial connector 32. In particular, the protocol used assumes that all information is passed to a common destination. If during the transfer of an IS-99 FAX, the remote unit has updated wireless status information for the display, no means exists to transfer the information over the external serial connector 32 during the IS-99 FAX transfer because the IS-99 transfer preempts the transfer of any other type of data.
Therefore, there is a need in the art for a means of transferring data between multiple entities over a single serial link. The invention fulfills this need in an efficient manner.
One embodiment of the invention comprises a method of communicating between multiple entities over a common data link using a QUALCOMM multiplex interface protocol (QMIP) unit. The QMIP unit receives and stores data information from a first set of modules. For example, the first set of modules can be functional modules within a wireless access unit or they can be application modules within a smartphone. In one embodiment, the QMIP unit comprises a memory configured to be a queue which stores an indication of the module and the information. The QMIP unit also receives and stores a flow control indication from each module of a first set of modules. The flow control indication is indicative as to whether each module of the first set of modules is capable of receiving data. For example, if the entity communicating with the module from the far side of the common data link has filled the data input queue of the module, the module sets the flow control indication to signal the far-side entity to cease the transmission of data to the module. The QMIP unit creates a frame which carries the data information and the flow control indication corresponding to one of the first set of modules. The QMIP unit forwards the frame over the common data link.
At the far end of the data link, the receiving QMIP unit receives the frame and parses the flow control indication and the data information from the frame. The receiving QMIP forwards the flow control indication and the data information to a destination module. The destination module processes the data according to normal procedures. In addition, the destination module responds to the flow control indication by ceasing the transmission of data to the sending module if so indicated.
In a general embodiment of the invention, a digital apparatus has a first set of modules. Each module has a data input, a data output and a flow control output. Each module is configured to provide a flow control indication at the flow control output if unable to accept additional data at the data input.
A first connection module, such as the QMIP unit, has a transmission input coupled to the data output of each module of the first set of modules. The first connection module also has a flow control input coupled to the flow control output of each module of the first set of modules. The first connection unit also has a transmission output. The first connection module is configured to receive information from the transmission input and to create a frame comprising the information and the flow control indication corresponding to one of the first set of modules. The first connection unit produces the frame on the transmission output.
A common data link connects the first connection module to a second connection module. The common data link has a first input coupled to the transmission output of the first connection module and has a first output. The common data link is configured to pass the frame from the first input to the first output.
The second connection module has a reception input coupled to the first output of the common data link and has a flow control output and a data output. The second connection module is configured to parse the frame and to pass the flow control indication and the information to an intended module from a second set of modules from the flow control output and the data output, respectively.